Asynchronous Functional Session Types

نویسندگان

  • Simon Gay
  • Vasco Vasconcelos
چکیده

Session types support a type-theoretic formulation of structured patterns of communication, so that the communication behaviour of agents in a distributed system can be verified by static type checking. Applications include network protocols, business processes, and operating system services. In this paper we define a multithreaded functional language with session types, which unifies, simplifies and extends previous work. There are three main contributions. First: an operational semantics with buffered channels, instead of the synchronous communication of previous work. Second: session type manipulation by means of the standard structures of a linear type theory, rather than by means of new forms of typing judgement. Third: a notion of subtyping, including the standard subtyping relation for session types (imported into the functional setting) and a novel form of subtyping between standard and linear function types. Our new approach significantly simplifies session types in the functional setting, clarifies their essential features, and provides a secure foundation for language developments such as polymorphism and object-orientation, as well as further forms of static analysis including estimating the size of communication buffers.

برای دانلود متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

منابع مشابه

Linear type theory for asynchronous session types

Session types support a type-theoretic formulation of structured patterns of communication, so that the communication behaviour of agents in a distributed system can be verified by static type checking. Applications include network protocols, business processes, and operating system services. In this paper we define a multithreaded functional language with session types, which unifies, simplifi...

متن کامل

Session Types in Haskell Updating Message Passing for the 21st Century

Session Types allow plans of conversation between two concurrent processes to be treated as types. Type checking then ensures that communication between processes is safe: i.e. it obeys the protocol specified by the session type. Thus Session Types offer a means to establish conformance to protocols in both distributed applications and multi-threaded programming. We incorporate Session Types in...

متن کامل

A Semantic Deconstruction of Session Types

Doctoral Thesis A Semantic Deconstruction of Session Types by Alceste Scalas This work investigates the semantic foundations of binary session types, by revisiting them in the abstract setting of labelled transition systems. The main insights and contributions are: • a semantically unified approach to the study of session types and CCS processes with synchronous and asynchronous semantics — the...

متن کامل

Asynchronous Session Types: Exceptions and Multiparty Interactions

Session types are a formalism for structuring communication based on the notion of session: the structure of a conversation is abstracted as a type which is then used as a basis of validating programs through an associated type discipline. While standard session types have proven to be able to capture many real scenarios, there are cases where they are not powerful enough for describing and val...

متن کامل

Undecidability of Asynchronous Session Subtyping

The most prominent proposals of subtyping for asynchronous session types are by Mostrous and Yoshida for binary sessions, by Chen et al. for binary sessions under the assumption that every message emitted is eventually consumed, and by Mostrous et al. for multiparty session types. We prove that, differently from what stated or conjectured in above proposals, all of these three subtyping relatio...

متن کامل

ذخیره در منابع من


  با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید

برای دانلود متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

عنوان ژورنال:

دوره   شماره 

صفحات  -

تاریخ انتشار 2007